Formal specifications in software maintenance: from code to Z++ and back again

نویسندگان

  • Jonathan P. Bowen
  • Peter T. Breuer
  • Kevin Lano
چکیده

This paper presents a number of techniques that have been developed as components of the software maintenance process as part of the ESPRIT REDO project. These techniques are all based on formal methods, and the work described has provided the mathematical underpinning to a large collaborative project that has been investigating various aspects of software maintenance. The focus of the project has been on reverse engineering, and methods for this part of the maintenance process are reported on here, along with techniques for subsequent re-engineering. A proposal for speci cation-oriented software maintenance is presented, in which speci cations in an object-oriented extension of the formal notation Z are maintained in step with the corresponding programs.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Converting Specifications in a Subset of Object-Z to Skeletal Spec# Code for both Static and Dynamic Analysis

Construction of correctness is an essential issue for the implementation of a reliable software system. Formal methods based verification techniques provide programmers various ways to reason their program correctness through mathematically supported static analysis and dynamic analysis. In this paper, we introduce a tool that converts formal specifications in a subset of Object-Z to skeletal S...

متن کامل

Experience with Logical Code Analysis in Software Maintenance

Formal program specification and logical analysis are often used for program derivation and proofs of correctness. The basic tools include the logic of predicate calculus and Dijkstra’s weakest precondition calculations. Recent work has shown that these tools are also very useful in the maintenance phase of the software life-cycle. This paper reports experience working with software maintenance...

متن کامل

Experimental comparison of the comprehensibility of a Z specification and its implementation in Java

Comprehensibility is often raised as a problem with formal notations, yet formal methods practitioners dispute this. In a survey, one interviewee said "formal specifications are no more difficult to understand than code". Measurement of comprehension is necessarily comparative and a useful comparison for a specification is against its implementation. Practitioners have an intuitive feel for the...

متن کامل

Reverse-engineering Cobol via formal methods

We describe methods and software tools which aid in reverse-engineering COBOL application programs back to the specification stage (and in validating them against the specification). The aim is to create object-oriented abstractions from the implementation which capture the design concepts accurately, and the central process which the tools support is ‘transformation from formalism to formalism...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Information & Software Technology

دوره 35  شماره 

صفحات  -

تاریخ انتشار 1993